package com.ling.design;

/**
 * @author: ling007
 * @date: 2024/9/27 14:13
 * @description: 优惠券折扣计算接⼝
 *
 * 优惠券类型：
 * 1、立减券：直接减多少
 * 2、满减券：满减券满多少减多少；
 * 3、折扣券：满多少打多少折；
 * 4、n元购
 */

public class CouponDiscountService {

    public double discountAmount(int type, double typeContent,
                                 double skuPrice, double typeExt) {

        // 1. 直减券
        if (1 == type) {
            return skuPrice - typeContent;
        }
        // 2. 满减券
        if (2 == type) {
            if (skuPrice < typeExt) return skuPrice;
            return skuPrice - typeContent;
        }
        // 3. 折扣券
        if (3 == type) {
            return skuPrice * typeContent;
        }
        // 4. n元购
        if (4 == type) {
            return typeContent;
        }
        return 0D;
    }
}
